const path = require('path')

const resolve = dir => path.join(__dirname, dir)

function chainWebpack(config) {
  // 排除掉 loader 对`src/icons`目录的处理
  config.module
    .rule('svg')
    .exclude.add(resolve('src/icons'))
    .end()

  config.module
    .rule('icons')
    .test(/\.svg$/)
    .include.add(resolve('src/icons'))
    .end()
    .use('svg-sprite-loader')
    .loader('svg-sprite-loader') // 用 svg-sprite-loader 解析
    .options({
      symbolId: 'icon-[name]' // symbolId 命名格式 icon-图标名称
    })
}

module.exports = {
  chainWebpack,
  devServer: {
    port: 8080,
    open: true,
    overlay: {
      warning: false,
      errors: true
    }
  }
}
